Wireless communication apparatus

ABSTRACT

Processing data presented in the form of a vector representation involves representing direction of the vector with incremental accuracy by using a set of vector codebooks of decreasing dimensions per accuracy increment.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a division of and claims the benefit of priorityunder 35 U.S.C. §120 from U.S. Ser. No. 12/495,042 filed Jun. 30, 2009,the entire contents of which are incorporated herein by reference. U.S.Ser. No. 12/495,042 claims the benefit of priority under 35 U.S.C. §119from United Kingdom Application No. 0812032.1 filed Jul. 1, 2008.

The present invention is concerned with coding and/or decoding in thecontext of wireless communications apparatus. It is applicable to, butnot exclusive to, mobile telephones, base stations, WLAN with multipleantennas, vocoders and other data compression processors, andpositioning systems requiring incremental refinement of positionalinformation (such as for GPS applications).

Vector quantisation is a family of source coding (or data compression)techniques whereby an input sequence of symbols is represented by acodeword drawn from a given codebook according to someminimum-distortion criterion.

In some applications, the most important information about the inputvector that has to be accurately represented is its “direction”. Theconcept of vector direction is associated with the concept of vectorspace spanned by a given vector; that is, all vectors that differ by ascaling coefficient are characterised by the same direction.

For example, if v is an M-dimensional complex vector and α≠0 is anarbitrary complex scalar, then v and αv have the same direction.Direction quantisation is obtained by using vector quantisationcodebooks formed by unit vectors distributed on the M-dimensionalcomplex sphere, for example. This explains the name of spherical vectorquantisation. One typical distortion measure used in spherical vectorquantisation is the chordal distance, which, for two vectors u and v isdefined as

$\begin{matrix}{{{d\left( {u,v} \right)} = \sqrt{1 - \frac{{{\langle{u,v}\rangle}}^{2}}{{u}^{2}{v}^{2}}}},} & (1)\end{matrix}$

where <u, v>=v^(H)u denotes the inner product and ∥u∥ the Euclideannorm.

Thus, the two linearly dependent vectors, v and αv, have zero chordaldistance, whereas two orthogonal vectors have maximum chordal distance,equal to 1. A spherical vector quantiser selects the codebookrepresentative, cεC, for an input vector v, with minimum chord distance,following the rule

$c = {\arg \; {\min\limits_{\overset{\_}{c} \in C}{{d\left( {v,\overset{\_}{c}} \right)}.}}}$

In many vector quantisation applications, it is desirable to provide adescription of input vectors that can be considered as a refinement ofprevious descriptions. For example, a message may be described with aparticular amount of distortion and then a decision can be takenthereafter that the message needs to be specified more accurately. Then,when an addendum to the original message is sent, this refinement ispresumed to be as efficient as if the stricter requirement had been usedfor the initial description.

In these multi-stage quantisation schemes, the goal is to operate asclose as possible to the rate-distortion bound after each refinementstage. Another example where it may be desirable to add information onprevious descriptions is in the encoding of correlated sources, toreduce the amount of redundant information. Instead of quantising thesamples of a correlated vector process independently, some form ofdifferential or hierarchical encoding can be applied to these samples.

Two example constructions that have been also used for spherical vectorquantisation will now be described.

1) Hierarchical Codebook Construction.

Two (or more) spherical codebooks are designed with a “nested”structure. The finer codebook is built as a collection of severalsmaller codebooks, one for each of the quantisation regions of thecoarse codebook. Each of these finer constituent codebooks hascode-vectors distributed in one particular quantisation region of thecoarse codebook. The two-stage coding principle is clear: as long as thesource vector is confined within one quantisation region of the coarsecodebook, the description can be refined by using the finer codebook,otherwise the description is updated from the coarse codebook.

2) Differential Encoding.

In this case, quantisation regions close in chordal distance areassigned to codewords close in Hamming distance. For a given sampleinput vector the difference between the actual quantisation index andthe previous index is encoded. Therefore, if the vector process iscorrelated sufficiently, only the least significant bits of the codemessage need to be communicated to the decoder. The most significantbits will be sent only when the source has experienced an abrupt change.

Spherical vector quantisation (SVQ) is described, for example, in D.Love, R. Heath, and T. Strohmer, “Grassmannian beamforming formultiple-input multiple-output wireless systems,” IEEE Trans. Inform.Theory, vol. 49, no. 10, pp. 2735-2747, Oct. 2003. A hierarchicalcodebook design method for SVQ has recently been proposed in J. Kim, W.Zirwas, and M. Haardt, “Efficient feedback via subspace-based channelquantization for distributed antenna systems with temporally correlatedchannels,” EURASIP J Advances in Signal Processing, 2008.

However, the above references do not address refinement of directionalquantisation of a vector source. This finds application for example inthe encoding of channel state information for feedback and other sourcecoding problems. Ordinary techniques for directional vector quantisationgenerally perform a single-stage quantisation and achieve a fixedresolution, whereas in many situations it is desirable to dynamicallychange the accuracy of the vector representation during the encodingprocess. In this case, it is more efficient to add information toprevious descriptions of a source rather than performing a newquantisation with a finer codebook.

One other problem not addressed by the prior art is the provision ofdirectional quantisation of a correlated vector source with adaptiveresolution and constant rate.

The problem can be best illustrated by an example. In this example, itis desired to describe the “direction” of a continuous-time correlatedvector source, by sampling and quantising the source at fixed timeinstants. The codebook index transition rate over time or, in otherwords, the rate at which the quantisation index changes over time,depends on the sampling rate and on the codebook size, which alsodetermines the resolution of the vector quantiser. If the codebookprovides the same code index over several consecutive quantisationevents, there is clearly a waste of resources. This redundancy could beremoved, for example, by reducing the sampling rate while keeping thesame codebook size, by enlarging the codebook for the same samplingrate, or by adjusting both parameters.

There are applications where it is desirable 1) to keep the samplingrate and the message size at each quantisation event fixed, and 2) tooperate with very few pre-defined codebooks. This is the case, forexample, for mobile stations (MS) having to report periodically theirchannel directions to a base station (BS). In such a case, the BS maywant to avoid negotiating the feedback rate every so often with eachindividual MS.

These problems can also be addressed by hierarchical codebookconstruction or differential encoding techniques. However, designingthese nested codebooks according to some optimality criteria isgenerally difficult and the construction is unique for a given channelvector dimension. In fact, all codebooks in the hierarchy have to havethe same dimensionality: if the same codec has to operate with differentvector dimensions, different sets of codebooks must be provided for eachinput dimension.

An aspect of the present invention provides an SVQ scheme using“off-the-shelf” and scalable codebooks. In particular, in such aspect ofthe present invention, the codebook dimension is reduced by one at eachrefinement stage, which further reduces the encoding complexity, and thecodebooks are designed separately. Besides, the same codebook ofdimension n−1, defined for the first refinement stage of a dimension-nvector source, can be used for the initial quantisation stage of an(n−1)-dimensional vector.

An aspect of the invention provides a coder architecture that provides arepresentation of an input vector direction with incremental accuracy byusing a set of vector codebooks of decreasing dimensions.

An aspect of the invention provides a decoder architecture that providesa representation of an input vector direction with incremental accuracyby using a set of vector codebooks of decreasing dimensions.

An aspect of the invention provides an encoding procedure forconstructing a basis set of orthogonal reference vectors from a set ofcodebooks of decreasing dimensions, such that a truncated representationof a vector by the first n components in the new reference system,introduces a chordal distortion bounded above by the product of maximumchordal distances associated with the first n codebooks.

An aspect of the invention provides an encoding procedure for describingwith incremental accuracy the direction of vectors of differentdimensions, by using the same set of quantisation codebooks.

It will be appreciated that the nature of the invention lends itself toimplementation by computer means, such as involving a computer programproduct. This product can be introduced as computer executable code,such as on a storage medium or a signal carrier, or as a hardware devicesuch as an FPGA, a DSP or an ASIC.

Other aspects of the invention will become apparent from the followingdescription of a specific embodiment of the invention, with reference tothe accompanying drawings, in which:

FIG. 1 is a schematic diagram of a wireless communications network inaccordance with an embodiment of the invention;

FIG. 2 is a timing diagram of feedback time frames for a traditionalone-stage directional quantisation and a 2-stage feedback withrefinement;

FIG. 3 is a graph depicting a first stage of the encoding process of thedescribed embodiment of the invention;

FIG. 4 is a graph depicting a second stage of the encoding process;

FIG. 5 is a graph depicting a third stage of the encoding process;

FIG. 6 is a graph depicting a final condition of the encoding process;

FIG. 7 is a graph illustrating a quantisation step of the describedprocess;

FIG. 8 is a graph illustrating a quantisation step of the describedprocess in an alternative configuration;

FIG. 9 is a graph of empirical distortion rate functions for thequantisation illustrated in FIGS. 7 and 8, for a real input;

FIG. 10 is a graph of empirical distortion rate functions for thequantisation illustrated in FIGS. 7 and 8, for a complex input;

FIG. 11 shows a flow diagram of an encoder process in accordance withthe described embodiment of the invention;

FIG. 12 shows a flow diagram of a decoder process in accordance withdescribed embodiments of the invention; and

FIG. 13 illustrates a practical implementation of communicationapparatus suitable for configuration either as the encoder or thedecoder of the described embodiment of the invention.

The main structural difference between the embodiment of the presentinvention described herein and other methods for directional vectorquantisation is that, in other techniques, the directional informationcan be refined by designing tree-structured codebooks, wherein eachrefinement codebook, apart from the initial one, can be partitioned intoas many sub-sets as the number of quantisation regions of the coarsecodebook one level up the tree structure. Therefore, all the codebooksin the hierarchy have the same dimensionality, and can be used forquantisation of just one particular vector dimension. The reader willrecognise that the dimension of a codebook denotes the size of itsvector components, and its size indicates its cardinality, that is thenumber of elements in the codebook.

Conversely, in this described embodiment of the invention, eachrefinement codebook has one dimension less than the parent codebook andis designed independently of the others. Therefore, the embodiment canuse readily available codebooks, each of which is good for directionalquantisation in its dimension, and can use the same codebooks forquantising vectors of different dimensions with various refinementdepths.

FIG. 11 shows the flow diagram of the operations carried out by theencoder to quantise the direction of a vector vεC^(M) with a refinementdepth n, with 1≦n≦M. It should be noted that the case n=1 corresponds toa single-stage directional quantisation of the input vector with acodebook C⁽¹⁾⊂C^(M). Also it should be noted that the same set ofcodebooks, C⁽¹⁾ . . . C^((M−1)), defined for this codec can be used fordirectional quantisation of complex vectors with dimension N, with N<M ,and up to N refinement stages. Besides the codebooks, the codecparameters include a vector component of choice for each dimension, M,M−1, . . . , 2, which indicates the component of the error vector to benulled in the reduction operation that takes place before eachrefinement operation. The i -dimensional error vector component isindicated in FIG. 11 by an elementary vector 1_(i,p) _(i) , whichdenotes an all-zero vector with a 1 in position p_(i). Another set ofcodec parameters are given by M−1 scalar quantisers. These are used forquantising the reconstruction coefficients generated by the refinementstages. Error analysis shows that it is possible to guarantee refinementof the quantised direction (i.e. reduction in chordal distortion) withvery coarse representation of these reconstruction coefficients, namelyzero-bit quantisation for amplitude and less than 2 bits for phase. Twoexamples of how these scalar quantisers can be designed are illustratedin the numerical example later in this description. However, thegranularity and parameters of these scalar quantisers may vary dependingon the application, and without changing the nature of the vectorquantisation technique, so they are not specified further in FIGS. 11and 12.

Three main structural blocks can be identified in FIG. 11, which denotethe fundamental operations carried out by the encoder at each stage.

A directional vector quantisation operation is applied to the reducederror vector, e_(r) ^((k−1)), of dimension M−k+1. The distortionmeasure, d(e_(r) ^((k−1)), c₁ ^((k))), used in this vector quantisation,denotes chordal distance, as defined in equation (1). This operation isnot carried out in the M-th stage, as the error vector e_(r) ^((m−1))reduces to a scalar quantity.

An error reduction operation reduces by one the dimension of the errorvector. The error vector is defined as the “chord” between the inputvector e_(r) ^((k−1)) in the directional quantisation operation and theoutput quantisation vector c_(i) _(k) ^((k)).

It should be noted that the unitary matrix involved in the reductionoperation is uniquely identified by the codec parameters, namely thecodebook vectors, the error components to be nulled and the fact that itconsists of a single plane-rotation. Therefore the matrix quantitiesR_(k) can be pre-computed and stored at both the encoder and decoder. Itshould be noted that there exist an infinite number of other unitarymatrices that perform the same error reduction operation, thereforedifferent assumptions could be made to fix one particulartransformation. Any such criterion to select R_(k) out of itspossibilities is assumed to be known at the both encoder and decoder(this does not apply if the matrices are pre-computed and stored), anddoes not change the nature of the encoding technique.

Calculation of the reconstruction coefficient yields the combinationcoefficients required for perfect reconstruction of the vector vdirection. This operation is carried out from the second stage onwards,as one coefficient is required in order to combine two directionalvector indications. The fundamental reconstruction step can be easilyderived from the definition of the “chordal error” vector, which reads:

e ^((k)) =e ^((k−1)) −<e ^((k−1)) , c _(i) _(k) ^((k)) >c _(i) _(k)^((k)),

where the notation of FIG. 11 is used. After normalising the expression,the fundamental reconstruction formula is obtained, which appears inFIG. 12, with the following notation (the combination coefficient thereis replaced by its quantised version)

ê _(r) ^((k−1)) =c _(i) _(k) ^((k))+α_(k) ê _(r) ^((k)).   (2)

It should be noted that the directional information contained in theerror vectors involved in the two expressions above is maintained,although they differ by a complex multiplication coefficient.

In another implementation, a different reconstruction formula may beused, which maintains the directions of the vectors involved. Thegeneral formula is obtained from (2) by a multiplication by a complexscalar coefficient, β_(k), and reads:

ê _(r) ^((k−1)′)=β_(k) c ^((k))+α_(k) ê _(r) ^((k)′).

Another structural property of the construction is that, say {circumflexover (v)}_(m) the reconstructed vector using m refinement stages. Then,if the reconstruction coefficients, α_(k), k=1, . . . , m−1, are knownexactly at the decoder, the final distortion is the product ofdistortions associated with the quantisation stages (it should be notedthat the distortion measure is a positive number between 0 and 1), i.e.

${d\left( {{\hat{v}}_{m},v} \right)} = {\prod\limits_{k = 1}^{m}\; {{d\left( {e_{r}^{({k - 1})},c_{i_{k}}^{(k)}} \right)}.}}$

If the reconstruction coefficients are quantised, it can be shown thatunder very mild constraints on the accuracy of the scalar quantisers,distortion reduction can be guaranteed at each refinement stage, thatis:

d({circumflex over (v)} _(m) , v)<d({circumflex over (v)} _(m−1) ,v)< .. . <d({circumflex over (v)} ₁ , v).

FIG. 12 shows the flow diagram of the decoder operations, which can bereadily derived from the encoder diagram. The main structural block,which is shown in the middle of the loop in FIG. 12, consists of twooperations:

Error augmentation, which is the reverse operation of the errorreduction step carried out by the encoder; and

Error reconstruction, which implements the reconstruction formula (2) ina recursive fashion.

It should be noted that the decoder need not know the full encodedmessage up to the maximum refinement depth, in order to reconstruct thevector direction. In fact, reconstruction of the source vector can takeplace after each refinement message is received, generating increasinglyaccurate estimates of the vector direction.

One application for which embodiments of the present invention areenvisaged to offer clear benefits is in the encoding of channel stateinformation (CSI) for feedback purposes. Taking as an example a cellularor WLAN system, where the base station (BS) uses M antennas fortransmission, where, to fix ideas, M can be 2, 3 or 4, and there is amultiplicity of mobile stations (MS) that have to report periodicallytheir channel signature to the BS. This channel signature may consist ofa complex M−dimensional vector, represented by vector v in FIG. 1, whichillustrates this example system configuration.

In a conventional system a single codebook is defined for each possiblenumber of BS transmit antennas in use, i.e. C⁽¹⁾⊂C⁴, C⁽²⁾⊂C³, C⁽³⁾⊂C² inthe present example. Each MS is obliged to report a feedback messageevery τ_(f) seconds, which consists of the codebook index, i₁, resultingfrom a minimum chordal distance quantisation of the vector of channelmeasurements with codebook C^((4−M+1)). If a particular MS reports thesame codebook index, on average, for two consecutive time intervals,this means that the channel coherence time is roughly 2τ_(f) and thefeedback can be made more resource efficient in at least two ways: byeither defining a finer codebook for any possible dimension M, or byreducing the feedback interval. Either solution can be impractical, aseach requires introduction of new codebooks and/or negotiation ofdifferent feedback report rates for each MS.

The present embodiment of the invention provides an attractive solutionto the problem, without the drawbacks of new codebook definitions and/orvariable feedback report rates: the MS can report index i₁ at times0,2τ_(f), 4τ_(f), . . . , i.e. using a coarser time interval,τ_(c)=2τ_(f), whereas a refinement message is sent on odd times τ_(f),3τ_(f), 5τ_(f), . . . . Refinement is achieved by using codebookC^((4−M+1)), for M=4, 3, while no codebook is required in the case M=2.The refinement message consists, in general, of an index i₂ and aquantised reconstruction coefficient, Q₁(α₁), which can be encodedtogether in such a way, for example, that the coded message size is thesame in all feedback reports.

In the exemplary network of FIG. 13, each of the base station and mobilestation is equipped with the technology to enable establishment ofwireless communication. Exemplary mobile stations include mobile phones,Personal Digital Assistants (PDA), general purpose computers, integrateddevices combining one or more of the preceding devices, and the like.The base station may be a general-purpose computer, standard laptop,fixed terminal, or other electronic device configured to transmit,receive and process data according to an air interface method.

FIG. 13 shows a station 1300 according to a specific embodiment of thepresent invention. In the embodiment of FIG. 13, the station 1300 isimplemented by means of a general-purpose computer with communicationsfacilities. In this specific embodiment, communications facilities areprovided by means of hardware, which is in turn configured by means ofsoftware. More particularly, the station 1300 comprises a processor1302, in communication with the working memory 1304 and a bus 1306. Amass storage device (which, in this case, is a magnetic storage device,though other such storage devices would suffice) 1308, is provided forlong term storage of data and/or programs not in immediate use. A mediumaccess controller 1310 is connected to a plurality (two in this case) ofantennas 1312, 1314. The medium access controller 1310 will manage thestation's access to the communications medium.

By means of the bus 1306, user operable input devices 1318 are incommunication with the processor 1302. The user operable input devices1318 comprise any means by which an input action can be interpreted andconverted into data signals, for example, DIP switches. Audio/videooutput devices 1316 are further connected to the general-purpose bus1306, for the output of information to a user. Audio/video outputdevices 1316 include any device capable of presenting information to auser, for example, status LEDs.

FIG. 2 illustrates the CSI feedback concept described above, compared toa traditional one-stage scheme. The details of how the codec operateswill now be described by way of a numerical step-by-step example. Theexample considers a three-dimensional real vector for ease ofgeometrical representation; however, it will be appreciated by thereader that the method applies to complex vectors as well and to anyvector dimension.

EXAMPLE 1

Let v=[−0.0624 −0.1168 −0.9912]^(T) be the vector for whichrepresentation of direction is desired. Without loss of generality, thevector norm has been normalised to 1. Two codebooks are defined fordirectional quantisation in 3 and 2 dimensions, respectively, eachconsisting of 4 code-vectors:

${C^{(1)} = \begin{bmatrix}{- 0.7416} & {- 0.1266} & 0.8759 & {- 0.0077} \\0.1716 & 0.5723 & 0.2195 & {- 0.9634} \\{- 0.6485} & 0.8102 & {- 0.4296} & 0.2680\end{bmatrix}},{C^{(2)} = {\begin{bmatrix}{- 0.7830} & {- 0.1138} & 0.6220 & 0.9935 \\{- 0.6220} & {- 0.9935} & {- 0.7830} & {- 0.1138}\end{bmatrix}.}}$

At each refinement stage, it is assumed that the error vector componentto be nulled is the last—this assumption will appear clear later in theexample. Any other component can be chosen for each refinement stage,provided that coder and decoder share the same information.

Coding Stage 1.

Codebook C⁽¹⁾={c₀ ⁽¹⁾, . . . , c₃ ⁽¹⁾} is used for quantising v withminimum chordal distance. FIG. 3 shows the direction of vector v (x) andthat of the four code vectors (y,y¹). The three separation planes (A)are shown in shaded representation, which delimit the four quantisationregions. It should be noted that the quantisation regions aresymmetrical with respect to the origin.

Hence, the first quantisation operation yields the index

$i_{1} = {{\arg \; {\min\limits_{i \in {\{{0,\ldots \mspace{14mu},3}\}}}{d\left( {v,c_{i}^{(l)}} \right)}}} = 1.}$

The selected code-vector representative is marked in bold (y¹) in FIG.3.

Stage 2.

FIG. 3 shows the “chord” (Z₁) e⁽¹⁾=v−c₁ ^((1)T)vc₁ ⁽¹⁾, of lengthd(v,c⁽¹⁾ ₁), which identifies the direction to be quantised at thesecond stage. Note that this direction is perpendicular to c⁽¹⁾ ₁. Codevector c⁽¹⁾ ₁ uniquely identifies an orthogonal transformation (i.e.isometry), R₁=B₁G₁ ^(H)B₁ ^(H), where B₁ is a basis-change matrix and G₁applies a single plane-rotation, and such that R₁ ^(T)c₁ ⁽¹⁾=[0 01]^(T). This is computationally inexpensive to calculate and reads

$R_{1} = {\begin{bmatrix}0.9912 & 0.0400 & {- 0.1266} \\0.0400 & 0.8190 & 0.5723 \\0.1266 & {- 0.5723} & 0.8102\end{bmatrix}.}$

Besides, as noted above, these matrices can be pre-computed and storedbeforehand, as they depend solely on the codebook vectors and on theerror component to be nulled.

This transformation is also such that R₁ ^(T)e₁=[e_(r) ^((1)T) 0]^(T),where the last component of the error vector has been nulled, accordingto the initial assumption. Therefore, a new directional quantisation canbe applied to the reduced error vector e_(r) ⁽¹⁾ by using codebookC⁽²⁾={c₀ ⁽²⁾, . . . , c₃ ⁽²⁾}. The second stage quantisation index isgiven by

$i_{2} = {{\arg \; {\min\limits_{i \in {\{{0,\ldots \mspace{14mu},3}\}}}{d\left( {e_{r}^{(1)},c_{i}^{(2)}} \right)}}} = 2.}$

Besides this, a combination coefficient must be calculated. Firstly,some essential notation regarding the following two inner products willbe explained:

${\frac{\langle{v,c_{1}^{(1)}}\rangle}{v} = {^{j\; \varphi_{1}}\cos \; \theta_{1}}},{\frac{\langle{e_{r}^{(1)},c_{2}^{(2)}}\rangle}{e_{r}^{(1)}} = {^{j\; \varphi_{2}}\cos \; \theta_{2}}},$

where cos θ₁, cos θ₂ ε [0,1], while φ₁,φ₂ ε {−π, 0}, in the real case(φ₁,φ₂ ε [−π, π) in the complex case). The combination coefficient ofinterest is given by

α₁ =e ^(j(φ) ² ^(−φ) ¹ ⁾ tan θ₁ cos θ₂=0.5646.   (3)

FIG. 4 shows the plane (P) where the stage-2 directional quantisationtakes place. It will be noted that the plane is normal to c₁ ⁽¹⁾ (thedirection of which direction is plotted in dashed line Q). The directionof e_(r) ⁽¹⁾ is drawn in bold and labelled E, that of c₂ ⁽²⁾ in bold andlabelled C, while the other solid lines CV depict the directions of thecode vectors in C⁽²⁾. The dashed line V denotes the direction of v.

Stage 3.

FIG. 4 shows the “chord” (Z₂) e⁽²⁾=e_(r) ⁽¹⁾−c₂ ^((2)T)e_(r) ⁽¹⁾c⁽²⁾ oflength d(e_(r) ⁽¹⁾,c₂ ⁽²⁾, which identifies the direction orthogonal tothe vectors {c₁ ⁽¹⁾, R₁[c₂ ^((2)T) 0]^(T)}. Clearly, it is not necessaryto quantise the direction of this last error vector, as it is uniquelyand exactly described by the pair (c₁ ⁽¹⁾, c₂ ⁽²⁾) and the convention ofwhich component to null (the last in the present example). In fact if,as in the previous stage, the isometry R₂=B₂G₂ ^(H)B₂ ^(H) iscalculated, such that R₂ ^(T)c₂ ⁽²⁾=[0 1]^(T), this transformationyields R₂ ^(T)e⁽²⁾=[e_(r) ⁽²⁾ 0]^(T), where e_(r) ⁽²⁾ is a scalar. Thisunitary matrix reads

$R_{2} = {\begin{bmatrix}{- 0.7830} & 0.6220 \\{- 0.6220} & {- 0.7830}\end{bmatrix}.}$

Therefore, the direction of e⁽²⁾ is exactly described by the unit vectorR₂[1 0]^(T), and the degenerate third-stage quantisation vector is givenby the scalar c³=1. The “inner product” associated with this pseudoquantisation stage is given by

${\frac{\langle{e_{r}^{(2)},c^{(3)}}\rangle}{e_{r}^{(2)}} = {{^{j\; \varphi_{3}}\cos \; \theta_{3}} = ^{j\; \varphi_{3}}}},$

and the combination coefficient reads

α₂ =e ^(j(φ) ³ ^(−φ) ² ⁾ tan θ₂ cos θ₃=0.2908.   (4)

FIG. 5 shows the direction Z₃ associated with the third stage, while indashed line are the two directions (Z₁,Z₂) identified in the previousstages. The “refinement path” RP is plotted along the three orthogonaldirections. It will be noted that the line passing through the initialand final points of the path represents exactly the direction of vectorv. In other words the procedure followed has identified a set ofreference axes, i.e. a vector basis for R³, out of the two codebooksprovided, given by

$\begin{matrix}{C = \begin{bmatrix}c_{1}^{(1)} & {R_{1}\begin{pmatrix}c_{2}^{(2)} \\0\end{pmatrix}} & {R_{1}\begin{pmatrix}{R_{2}\begin{pmatrix}1 \\0\end{pmatrix}} \\0\end{pmatrix}}\end{bmatrix}} \\{= \begin{bmatrix}{- 0.1266} & 0.5852 & {- 0.8010} \\0.5723 & {- 0.6164} & {- 0.5408} \\0.8102 & 0.5269 & 0.2569\end{bmatrix}}\end{matrix}$

The three orthogonal vectors (V) are depicted in FIG. 6. This newreference system has the following property that makes it appealing fordirectional representation of v. The following vector will now beconsidered in the new set of coordinates:

${{\hat{v}}_{3}^{*} = \begin{bmatrix}1 \\\alpha_{1} \\\alpha_{2}\end{bmatrix}},$

such that

${{\hat{v}}_{2}^{*} = \begin{bmatrix}1 \\\alpha_{1} \\0\end{bmatrix}},{and}$ ${{\hat{v}}_{1}^{*} = \begin{bmatrix}1 \\0 \\0\end{bmatrix}},$

are described as the two truncated representations. In the old set ofcoordinates the three vectors read

{circumflex over (v)}₁=C{circumflex over (v)}₁ ^(*)=[−0.1266 0.57230.8102]^(T),

{circumflex over (v)}₂=C{circumflex over (v)}₂ ^(*)=[0.2039 0.22431.1077]^(T),

{circumflex over (v)}₃=C{circumflex over (v)}₃ ^(*)=[0.0724 0.13551.1499]^(T).

The three vectors are plotted in FIG. 6 in dash-dot line. The chorddistances between these vectors and the original vector v can be shownto be equal to

d(v,{circumflex over (v)} ₁)=sin θ₁=0.5069,

d(v,{circumflex over (v)} ₂)=sin θ₁ sin θ₂=0.1415,

d(v,{circumflex over (v)} ₃)=sin θ₁ sin θ₂ sin θ₃=0.

The three distortion functions are separable functions of thedistortions introduced by each directional quantisation stage. Thisproperty allows the codebooks to be designed C⁽¹⁾, C⁽²⁾ separately forminimum chordal distortion in R³, R² respectively.

Coded Message

Several different message formats can be used to encode the above vectordecomposition, such that reconstruction of vectors {circumflex over(v)}₁, {circumflex over (v)}₂, or {circumflex over (v)}₃ at the decoderis possible, depending on the refinement depth. The reference axes (i.e.quantisation directions) can be represented exactly by a codebook index,while the last possible basis direction is fully determined by theprevious stages. For the scalar coefficients it is necessary to providea finite-bit representation. For this reason it is convenient to adoptthe representation of the combination coefficients given in (3)-(4). Thefloating point representation of the coded message, for each stages,which allows perfect reconstruction of the vector v direction, afterthree stages, is given by

i₁|i₂,α₁|α₂.

It can be shown that, by representing the “phase” of the combinationcoefficients (i.e. their sign in the real case) with 1 bit for the realcase and 2 bits for the complex case, refinement can be guaranteed, evenif no bits are used for representing the amplitude of the samecoefficients. The strategy consists in setting a fixed threshold foreach combination coefficients: if the amplitude of the coefficient issmaller than the pre-defined threshold, then the encoder stops therefinement process (i.e. the coefficient is replaced by zero), if it islarger or equal, the refinement stage is carried out and the amplitudeof the coefficient is quantised with the requested number of bits (whichcan be zero). These threshold values are intended as parameters of thecodec, which are known to both the encoder and decoder, and can beoptimised for minimum average distortion, for any particular codecconfiguration. Besides, they can be fixed or periodically adjusted.

As an example, it is assumed that it is desired to expend 2 bits for therepresentation of each combination coefficient in the above case. Thethresholds for an isotropic input vector distribution and a uniformquantiser are optimised, which yields the values ε₁=0.3848, ε₂=01296.

The maximum values of the coefficients, which determine the boundariesof the uniform quantisers, can be determined from the maximumdistortions of codebooks C⁽¹⁾, C⁽²⁾. It can be noted that C⁽¹⁾corresponds to a cube in R³, therefore its maximum chordal distortion,which follows from basic geometrical properties, is d_(max) ⁽¹⁾=√{squareroot over (2/3)}. The maximum chordal distortion of codebook C(²) isalso trivially found to be d_(max) ⁽²⁾=sin(π/8). The two coefficientsα₁, α₂ are then bounded by

${{- 2} \leq \alpha_{1} \leq 2},{{{- \tan}\frac{\pi}{8}} \leq \alpha_{2} \leq {\tan {\frac{\pi}{8}.}}}$

The characteristics of the two uniform quantisers are drawn in FIG. 7.

It can be shown that, if |α₁|<ε₁, it cannot be guaranteed in generalthat the reconstruction {circumflex over (v)}₂ has a smaller distortionthan {circumflex over (v)}₁. Similarly, if |α₂|<ε₂, the reconstruction{circumflex over (v)}₃ does not necessarily have lower distortion than{circumflex over (v)}₂. Therefore, when using the quantisers of FIG. 7,the refining of the vector description is stopped if the combinationcoefficient falls below the threshold at a given stage.

In a different implementation, it may be decided to refine the vectordescription up to a given depth in all cases, by slightly modifying thecharacteristics of the scalar quantisers as shown in FIG. 8. This ispossible because the reconstruction error thereby introduced when theamplitude of the coefficient falls below the threshold is notcatastrophic in nature, and actually there are good chances that therefined description still has a smaller distortion.

In the particular example herein, the two pairs of quantisers give outthe same result, because both coefficients exceed the threshold, as canbe seen from (3)-(4). The coded message in the three possible refinementstages, then reads

i₁|i₂,Q(α₁)|Q(α₂).   (5)

In terms of number of bits, the first message in this example consistsof a 2-bit index, the first refinement stage (second message) requires 4bits in total (2-bit index and 2 bits for the reconstructioncoefficient), while the last message (second refinement stage) contains2 bits for the coefficient. By adjusting the codebook sizes and theresolution of the scalar quantisers, it is possible to have codedmessages with the same size for all refinement stages.

Decoder

The decoder can reconstruct the three estimates of the direction of v,for the three possible encoding stages, from the coded message (5), byusing the following formulas

${{\hat{v}}_{1} = {c_{i_{1}}^{(1)} = \begin{bmatrix}{- 0.1266} \\0.5723 \\0.8102\end{bmatrix}}},{{\hat{v}}_{2} = {{c_{i_{1}}^{(1)} + {{Q\left( \alpha_{1} \right)}{R_{1}\begin{bmatrix}c_{i_{2}}^{(2)} \\0\end{bmatrix}}}} = \begin{bmatrix}0.0986 \\0.3351 \\1.0129\end{bmatrix}}},{{\hat{v}}_{3} = {{c_{i_{1}}^{(1)} + {{Q\left( \alpha_{1} \right)}{R_{1}\begin{bmatrix}{c_{i_{2}}^{(2)} + {{Q\left( \alpha_{2} \right)}{R_{2}\begin{bmatrix}1 \\0\end{bmatrix}}}} \\0\end{bmatrix}}}} = {\begin{bmatrix}0.0148 \\0.2785 \\1.0398\end{bmatrix}.}}}$

As noted above, the transformation matrices R₁, R₂ are uniquelyidentified by vectors c_(i) ₁ ⁽¹⁾, c_(i) ₂ ⁽²⁾, respectively, by theconvention of nulling the last element in the error vectors, and by theassumption that they correspond to a single plane-rotation. The codec,with quantised reconstruction coefficients, produces the followingchordal distortion in this numerical example

d(v,{circumflex over (v)} ₁)=0.5069,

d(v,{circumflex over (v)} ₂)=0.2024,

d(v,{circumflex over (v)} ₃)=0.1517.

Distortion-Rate Performance

In order to evaluate how efficient the encoding scheme is in refiningthe description of a vector direction, the distortion-rate curve for anisotropic input distribution in R⁴ is compared with the distortion-rateperformance of a single-stage minimum chord-distance quantisation.

A 2-bit vector codebook is used for the first quantisation stage and a1-bit vector codebook for the first two refinement stages. In the thirdand last possible refinement stage the 1-bit vector codebook degeneratesin a 1-bit scalar quantisation of the reconstruction coefficient tan θ₂cos θ₃. The real combination coefficients (0-bit quantisation) for thefirst two refinement stages are not encoded, while one bit is used forthe phase coefficient, which is enough to encode the phase informationexactly in the real case.

Therefore, each of the four possible quantisation stages generates a2-bit coded message. For the single-stage directional vectorquantisation, the best known Grassmannian line packings are used.

FIG. 9 shows the distortion-rate curves for the real 4-dimensional case.In FIG. 10 the results for a complex isotropic input vector distributionin R⁴ are shown. The notation VQ(16,4,4) indicates that Grassmannianpackings of 16, 4 and 4 lines have been used as vector codebooks in thefirst, second and third vector quantisation (VQ) stage, respectively.The number of bits used for the phase of each reconstruction coefficientis also shown, which is denoted as side-information (SI). No bit is usedfor encoding the amplitude of these coefficients. By “analog phase” thepresent disclosure presents the case with entropy coding of the phaseinformation.

Further variations, modifications and additional features will beapparent to the skilled person considering the above disclosure and nostatement above is intended to limit the scope of protection sought forthe invention, which is to be determined by reference to the appendedclaims, interpreted in the light of but not specifically limited to, theabove description of specific embodiments.

1. A method of encoding a channel signature of signals received by amobile station from a plurality of antennas of a base station, themethod comprising quantising the channel signature as a matrix using acodebook; and encoding the matrix as a plurality of indications, theplurality of indications being indicative of at least a first vector, asecond vector and a phase correction to the vectors which combine togive the matrix.
 2. A method according to claim 1, wherein the pluralityof indications comprise indices for entries in the codebook.
 3. Themethod of claim 1, further comprising transmitting an indication of thefirst codebook index and the second codebook index to the base station.4. The method of claim 3, wherein the indication of the first codebookindex and the second codebook index are periodically transmitted to thebase station.
 5. A method of encoding a channel signature of signalsreceived by a mobile station from a plurality of antennas of a basestation, the method comprising quantising the channel signature as amatrix using a codebook; and encoding the matrix as a plurality ofindications, the plurality of indications in combination beingindicative of at least a first vector, a second vector and a thirdvector.
 6. A method according to claim 5, wherein the plurality ofindications comprise indices for entries in the codebook.
 7. The methodof claim 5, further comprising transmitting an indication of the firstcodebook index and the second codebook index to the base station.
 8. Themethod of claim 7, wherein the indication of the first codebook indexand the second codebook index are periodically transmitted to the basestation.
 9. A wireless communication apparatus operable to receivesignals from a plurality of antennas of a base station, the wirelesscommunication apparatus comprising a processor operable to encode thechannel signature of the signals received by quantising the channelsignature as a matrix using a codebook; and encoding the matrix as aplurality of indications, the plurality of indications being indicativeof at least a first vector, a second vector and a phase correction tothe vectors which combine to give the matrix.
 10. The wirelesscommunication apparatus of claim 9, wherein the plurality of indicationscomprise indices for entries in the codebook.
 11. The wirelesscommunication apparatus of claim 9, further comprising an antennaconfigured to transmit an indication of the first codebook index and thesecond codebook index to the base station.
 12. The wirelesscommunication apparatus of claim 11, wherein the antenna is configuredto periodically transmit the indication of the first codebook index andthe second codebook index to the base station.
 13. A method, in a basestation, of decoding a channel signature received from a mobile station,the method comprising receiving a plurality of indications; and usingthe plurality of indications to determine at least a first vector, asecond vector and a phase correction to the vectors in a codebook; andcombining the a first vector, a second vector and a phase correction tothe vectors which combine to determine a matrix indicating the channelsignature.
 14. A method according to claim 13, wherein the plurality ofindications comprise indices for entries in the codebook.
 15. A method,in a base station, of decoding a channel signature received from amobile station, the method comprising receiving a plurality ofindications; and using the plurality of indications to determine atleast of at least a first vector, a second vector and a third vector ina codebook; and combining the a first vector, a second vector and aphase correction to the vectors which combine to determine a matrixindicating the channel signature.
 16. A method according to claim 15,wherein the plurality of indications comprise indices for entries in thecodebook.
 17. A base station comprising at least one antenna configuredto receive a plurality of indications from a mobile station; and aprocessor configured to use the plurality of indications to determine atleast a first vector, a second vector and a phase correction to thevectors in a codebook; and combine the a first vector, the second vectorand the phase correction to determine a matrix indicating a channelsignature for signals received by the base station.
 18. A base stationcomprising at least one antenna configured to receive a plurality ofindications from a mobile station; and a processor configured to use theplurality of indications to determine at least a first vector, a secondvector and a third vector in a codebook; and combine the first vector,the second vector and the third vector to determine a matrix indicatinga channel signature for signals received by the base station.
 19. Acomputer readable carrier medium carrying processor executableinstructions which when executed on a processor cause the processor tocarry out a method according to claim
 1. 20. A computer readable carriermedium carrying processor executable instructions which when executed ona processor cause the processor to carry out a method according to claim5.